package corelayer;

import java.io.IOException;

/**
 * SunSPOTが実装するインターフェイスです
 */
public interface IRawDevice {

    /**
     * 周りのノードすべてに与えられたデータを送信します
     *
     * @param data 送信するデータ
     */
    void send(byte[] data) throws IOException;

    /**
     * 周りのノードから送られてきたパケットが存在する場合、そのうち最も古いものを1つ返します
     * 何も送られてきていない場合はnullが返されます。返すパケットはエラーチェックされ
     * 壊れていないことが保証される必要があります
     * @return 送られてきたパケットデータ
     */
    byte[] recv();
}
